import express from 'express';
import { fileURLToPath } from 'url';
import { dirname, join } from 'path';
import { exec } from 'child_process';

// 获取当前文件的目录
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);

const app = express();
const port = 8080;

// 提供静态文件
app.use(express.static(join(__dirname, 'dist')));

// 处理所有路由，返回index.html（支持Vue Router的history模式）
app.get('*', (req, res) => {
  res.sendFile(join(__dirname, 'dist', 'index.html'));
});

// 启动服务器
app.listen(port, () => {
  console.log(`服务器已启动，访问地址: http://localhost:${port}`);
  console.log('按 Ctrl+C 停止服务器');
  
  // 打开默认浏览器
  try {
    if (process.platform === 'win32') {
      exec(`start http://localhost:${port}`);
    } else if (process.platform === 'darwin') {
      exec(`open http://localhost:${port}`);
    } else {
      exec(`xdg-open http://localhost:${port}`);
    }
  } catch (error) {
    console.log('无法自动打开浏览器，请手动访问 http://localhost:8080');
  }
});